sstilabs镜像制作过程记录 您所在的位置:网站首页 home archive ofown镜像 sstilabs镜像制作过程记录

sstilabs镜像制作过程记录

2023-05-24 16:16| 来源: 网络整理| 查看: 265

sstilabs镜像制作过程记录1.前言

本镜像制作的项目来自于https://github.com/X3NNY/sstilabs

2.学习和借鉴python_flask比赛的Dockerfile

参考的项目https://github.com/CTFTraining/pasecactf_2019_web_flask_ssti

1234567#DockerfileFROM python:3.7-alpineCOPY ./files /appRUN pip install -r app/requirements.txtWORKDIR /appCMD sh -c "echo $FLAG > /app/flag && export FLAG=not_flag && FLAG=not_flag" && python app.py 1234567891011#docker-compose.ymlversion: '3.3'services: service: build: . image: ctftraining/pasecactf_2019_flask_ssti ports: - 8470:1337 environment: - FLAG=flag{flag_test} 3.开始写dockerfile12345678#最后用的requirements.txtFlask==1.1.1Jinja2==2.10.1MarkupSafe==0.23itsdangerous==0.24Werkzeug==0.15 123456789#DockerfileFROM python:3.7-alpineCOPY ./app /appWORKDIR /appRUN pip install -r requirements.txtCMD sh -c "echo $FLAG > /flag && export FLAG=not_flag && FLAG=not_flag" \ && python app.pyEXPOSE 5000 1234567891011#docker-compose.ymlversion: '3.3'services: service: build: . image: jerem1ah/python_sstilabs ports: - 7777:5000 environment: - FLAG=flag{flag_test} 4.镜像地址123docker pull jerem1ah/python_sstilabs端口7777:5000 5.结语

hub.dcoker地址

github项目地址【待更新】

ssti学习博客【待更新】

项目文件阿里云盘地址【待更新】

6.排错过程【写一个程序很简单,麻烦的还是排错…一共试了10多次才成功】1.python制作镜像踩坑过程-依赖问题【requirements.txt写的不全,后面的Flask的依赖一般直接下载了最新版,导致出错,一直在试错requirements.txt文件】

12345Flask==1.1.1Jinja2==2.10.1MarkupSafe==0.23itsdangerous==0.24Werkzeug==0.15

以上前两张图第一个虽然只有Flask==1.1.1但是依然会自动下载其他python包,但是会出现一个>=而不是==,也就是说只要满足Flask=1.1.1的版本都可以,一般会自动下载最新版本的,但是我们的程序用的可能不是最新版本的就会出错。经过查看docker容器的日志,试出了下面四个必须为==才能正常运行。

2.python程序的端口问题,还有先开启debug后面关了比较方便【host=’0.0.0.0’才是正确的配置,不设置或者127.0.0.1不能够访问端口】

以上两张图前者不能正常访问,后者可以,区别在于host=’127.0.0.1’和host=’0.0.0.0’

3.忘记修改debug为False【】

最后的镜像



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有